“Push” is a content distribution mechanism, which employs a client/server operation mode and requires a server to distribute the required content without requiring a client to send a specific request. “Push” is most frequently used in message notification systems, and is applied in various industries such as security, banking, and business website. Taking the field of mobile value-added services as an example, the push service has the following applications: user customized information, which mainly refers that a user designates a subscription condition through initiative subscription or operation, and a content provider actively sends proper information to the user according to the corresponding subscription condition; group send information, which refers to a content push initiated by a third party without initiative subscription from the user, and may be specifically sending focused advertisements for stores, or sending group information notification according to actual conditions; and point-to-point service, which refers that a certain user sends designated content to another user.
A structure for realizing a push application is mainly formed by the following three parts: a push proxy gateway (PPG), a push initiator (PI), and a terminal. The PI is an initiator of a push message, which is an application running on an ordinary website server and communicates with the PPG through a push access protocol (PAP). The PPG mainly functions to process a push submission and operations associated with the submission and transfers a push content to the terminal. Services of the PPG include: identification and authentication of the PI, access control, resolution and error detection of the push content and control information, address resolution of an acceptor of the push content, including broadcast, multicast, and other functions, and communication with the terminal through a push Over The Air (OTA) protocol.
Briefly, the push realizing process is described as follows. The PI initiates a push message, which indicates a receiving terminal, the source PI, and a push content of the push message. The PI sends the push message to the PPG through the PAP. Then, the PPG sends the push message to the terminal through the push OTA protocol. FIG. 1 is a schematic view of realizing a push application in the prior art.
A session initiation protocol (SIP) is a control (signaling) protocol in an application layer, which is adapted to establish, modify, and terminate a call between Internet Protocol (IP) network-based users. The actual applications of the SIP in practice include, but not limited to, speech, video, instant message, and the like. An SIP push service is a service for encapsulating a push content in an SIP message and transferring the SIPa message over an existing SIP/IP core network. FIG. 2 is a schematic view of realizing an SIP push service in the prior art. As shown in FIG. 2, the part accomplishing the functions of the PPG in the push service may be referred to as a push sending agent, while the part accomplishing the functions of the terminal in the push service may be referred to as a push receiving agent. The push sending agent and the push receiving agent are interface points of the SIP/IP core network and communicate with each other by using an SIP message. In the SIP push service, the functions provided by the SIP include: accessibility of a user, availability of the user, capability of the user, and session establishment and session management. The SIP/IP core network provides abundant end-to-end media sessions and sessions between a client and a server. The SIP/IP core network includes an SIP gateway and a registration server, and provides authentication and authorization access services for SIP clients and SIP services, and may also provide SIP registration and routing functions.
FIG. 3 is a schematic structural view of a framework of the SIP push service in the prior art. A terminal includes a push receiving agent and an application module. The push receiving agent transmits a push content to the application module. The application module accomplishes the corresponding service operation based on the push content. A server includes a push sending agent and an application module. The push sending agent receives a transfer command and the push content sent by a push provider PI, and sends the push content to the push receiving agent in the terminal over the SIP/IP core network according to the transfer command. The application module in the server accomplishes the functions associated with the service in the application layer.
Currently, in the SIP push service, the user can only report his/her own terminal capability information and preference through a user agent profile (UA Prof) mechanism. The terminal capability may refer to, for example, equipment manufacturer, model, software version, screen size, screen resolution, and the like, while the preference may refer to some user-defined configuration information. The information reported by the user may be employed by the server in realizing service customization and personalization. That is, the user informs the server of services supported by him/her. The message security and authorization in the SIP push service are mainly based on a security mechanism provided by the SIP/IP core network. That is, the SIP/IP core network can perform authentication and security appraisal on the push sending agent, so as to ensure that the push sending agent corresponding to the terminal is legal, but has no control capability on the push message, for example, in the case that the user does not wish to receive a large push content, the user intends to reject some undesirable service types and a push content containing reactionary words and violent words, the user intends to reject a push content sent by a PI that is un-trusted to the terminal, or the terminal is only expected to receive a specific push content. Since no control capability on the push message is provided, the push message cannot be sent in the above specific cases, so that the user experience is degraded.